package hyl.core.io;

import java.io.File;
import java.util.ArrayList;
import java.util.List;

import hyl.core.MyFun;

//文件检索引擎
public class MyFileSearch {
	List<File> 指定检索的目录 = null;

	public MyFileSearch(List<File> 指定目录) {
		if (指定目录 == null)
			指定检索的目录 = new ArrayList<>();
	}

	public MyFileSearch(File 指定目录) {
		指定检索的目录 = new ArrayList<>();
		指定检索的目录.add(指定目录);
	}

	/**
	 * 找到一个就够了
	 * 
	 * @param 查找目录或文件
	 * @return
	 */
	public File findOne(String 查找目录或文件) {
		for (File f : 指定检索的目录) {
			File ff = MyFile.find(f, 查找目录或文件);
			if (MyFun.isExist(ff))
				return ff;
		}
		return null;
	}

	/**
	 * 找到所有文件并返回
	 * 
	 * @param 查找目录或文件
	 * @return
	 */
	public File[] findMultiple(String 查找目录或文件) {
		List<File> 找到的文件 = new ArrayList<>();
		for (File f : 指定检索的目录) {
			MyFile.find(f, 查找目录或文件, 找到的文件);
		}
		return 找到的文件.toArray(new File[0]);
	}
}
